package com.xbongbong.pro.rabbitmq.binders;

import com.xbongbong.pro.rabbitmq.constant.ApprovalBinderConstant;
import com.xbongbong.pro.rabbitmq.constant.CooperativeOfficeBinderConstant;
import com.xbongbong.pro.rabbitmq.constant.DownloadBinderConstant;
import com.xbongbong.pro.rabbitmq.constant.WorkOrderBinderConstant;
import org.springframework.cloud.stream.annotation.Input;
import org.springframework.messaging.SubscribableChannel;
import org.springframework.stereotype.Service;

/**
 * 协同办公，工作流，下载 审批 消息队列
 * @author 魏荣杰
 * @date 2019/2/22 18:52
 * @since v1.0
 * @version v1.0
 */
@Service("officeConsumerBinder")
public interface OfficeConsumerBinder {
    /**
     * 工作流
     */
    @Input(CooperativeOfficeBinderConstant.WORKFLOW_INPUT)
    SubscribableChannel workflowInput();
//    @Output(CooperativeOfficeBinderConstant.WORKFLOW_OUTPUT)
//    MessageChannel workflowOutput();

    /**
     * 工单
     */
    @Input(WorkOrderBinderConstant.WORK_ORDER_INPUT)
    SubscribableChannel workOrderInput();
//    @Output(WorkOrderBinderConstant.WORK_ORDER_OUTPUT)
//    MessageChannel workOrderOutput();

    /**
     * 下载
     */
    @Input(DownloadBinderConstant.DOWNLOAD_INPUT)
    SubscribableChannel downloadInput();
//    @Output(DownloadBinderConstant.DOWNLOAD_OUTPUT)
//    MessageChannel downloadOutput();

    /**
     * 审批
     */
    @Input(ApprovalBinderConstant.APPROVAL_INPUT)
    SubscribableChannel approvalInput();
}
